// import { ElNotification } from 'element-plus'
// import { noticeStore } from '@/store/modules/notice'
// import { webSocketURL } from '@/config'

// import { useUserStore } from '@/store/modules/user'
// const { getUserInfo } = useUserStore()
// const _userInfo = getUserInfo()

export function websocketInstance() {
  // msgClickCallback
  // console.log('')
  // if (webSocketURL && !window['noticeSocket']) {
  //   const url = !webSocketURL.startsWith('ws://')
  //     ? `ws://${window.location.host}${webSocketURL}`
  //     : webSocketURL
  //   window['noticeSocket'] = new WebSocket(`${url}${_userInfo.userid}`)
  //   window['noticeSocket'].onopen = () => {
  //     window['heartbeatTimer'] && clearInterval(window['heartbeatTimer'])
  //     window['reStarTimer'] && clearTimeout(window['reStarTimer'])
  //     window['heartbeatTimer'] = setInterval(() => {
  //       window['noticeSocket'] &&
  //         window['noticeSocket'].send(JSON.stringify({ to: '0' }))
  //     }, 10000)
  //   }
  //   window['noticeSocket'].onerror = () => {
  //     window['heartbeatTimer'] && clearInterval(window['heartbeatTimer'])
  //     if (window['noticeSocket'] && window['noticeSocket'].CLOSED) {
  //       window['noticeSocket'].close()
  //     }
  //   }
  //   window['noticeSocket'].onmessage = (msg) => {
  //     if (!msg || !msg.data) retrun
  //     const msgData = msg.data
  //       ? JSON.parse(msg.data)
  //       : { body: '收到一条消息,请查看' }
  //     if (msgData.to !== '99') return
  //     ElNotification({
  //       title: '新消息',
  //       message: h(
  //         'div',
  //         {
  //           style: {
  //             cursor: 'pointer',
  //           },
  //           onClick: () => {
  //             msgClickCallback(msgData)
  //           },
  //         },
  //         msgData.body
  //       ),
  //       position: 'bottom-right',
  //     })
  //     noticeStore().refreshNoticeList()
  //   }
  //   window['noticeSocket'].onclose = () => {
  //     window['heartbeatTimer'] && clearInterval(window['heartbeatTimer'])
  //     if (window['noticeSocket'] && window['noticeSocket'].CLOSED) {
  //       window['noticeSocket'] = null
  //       window['reStarTimer'] = setTimeout(() => {
  //         websocketInstance(msgClickCallback)
  //       }, 10000)
  //     }
  //   }
  // }
}
